namespace IMSAT.OFTD.DOM
{
    public interface INewReader
    {
        object Read(IReadEviroment enviroment, object sourceType);

        bool CanRead(object source, Node parent);
    }

    public interface INewReader<TSourceType,TDestType>:INewReader
    {
        TDestType Read(IReadEviroment enviroment, TSourceType sourceType);

        bool CanRead(TSourceType source, TDestType parent);
    }

    public interface IReadEviroment
    {
        INewReader<TSrc, TDest> GetReader<TSrc, TDest>(TSrc source, TDest parent);
    }
}